package com.ayoka.parenting.interf;

/**
 * @ProjectName: ayoka7.
 * @ClassName: RequestCallback.
 * @Description: .
 * @Author: jincp.
 * @CreateDate: 2019/8/5 11:49.
 */

public interface RequestCallback<T> {

    /**
     * 操作成功
     * @param data 成功返回值
     */
    void onSuccess(T data);

    /**
     * 操作失败
     * @param errCode   错误码
     * @param errMsg    错误描述
     */
    void onFailure(int errCode, String errMsg);

    /**
     * 更新进度
     * @param currentLength   当前进度
     * @param totalLength    总体
     * @param done    是否完成
     */
    void notifyUpdate(long currentLength, long totalLength, boolean done);
}
